#ifndef TEXTCONTEXT_H
#define TEXTCONTEXT_H

#include "textlabel.h"

class LanguageStrategy;

/****************************************************
  Text context. Must be used in TextLabel.
 ****************************************************/
class TextContext
{
public:
    TextContext();
    virtual ~TextContext();

    // Set the style ( Free / Organized ) of text
    void setStyle(int style){
        _style = style;
    }

    // Get the style of text
    int getStyle(){
        return _style;
    }

    // Set the text
    void setText(TextLabel * text){
        _text = text;
    }

    // Set the language strategy
    void setLanguage(LanguageStrategy *);

protected:
    LanguageStrategy * _language;
    int _style;
    TextLabel * _text;
};

#endif // TEXTCONTEXT_H
